/**
 * 
 */
package ui;

import java.awt.BorderLayout;
import java.awt.Graphics;
import java.awt.Image;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;
import javax.swing.JPanel;

/**
 * Абстрактный класс-прародитель всех панелей, которые реализуют игровые экраны
 * 
 * @author Rumata
 */
public abstract class ScreenPanel extends ImagePanel {

	/**
	 * Метод назначающий базовые характеристики панели-экрана при ее создании
	 */
	protected void setOnCreateProperties(String imagePath) {
		setOpaque(false);
		setVisible(false);
		setLayout(new BorderLayout());

		/* Создание фона с изображением */
		try {
			setImage(ImageIO.read(new File(imagePath)));
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	/**
	 * Абстрактный метод для указания блока слушателей
	 */
	protected abstract void addListeners();

}
